Method and System for Providing User-Generated Content Via a Gateway

ABSTRACT

A method and system are provided in which a broadband gateway may be operable to handle at least one physical layer connection to at least one corresponding network access service provider. The broadband gateway may receive content and associated metadata through the at least one network access service provider. The broadband gateway may determine, based on the received metadata and on one or more rules associated with a user profile, whether to enable access to at least a portion of the received content by a device connected in a peer-to-peer configuration with the broadband gateway. The broadband gateway may communicate to such device an indication that at least a portion of the received content is available for sharing. The metadata may comprise rating information, copyright information, language information, and privacy rules. The rating information may be modified based on information received by the broadband gateway from other users.

CROSS-REFERENCE TO RELATED APPLICATIONS/INCORPORATION BY REFERENCE

This application claims the benefit of U.S. Provisional Patent Application 61/351,696, filed on Jun. 4, 2010.

This application also makes reference to:

U.S. patent application Ser. No. 12/355,377 (Attorney Docket No. 19545US01) filed on Jan. 16, 2009; U.S. patent application Ser. No. 12/355,413 (Attorney Docket No. 19897US01) filed on Jan. 16, 2009; U.S. patent application Ser. No. 12/355,480 (Attorney Docket No. 19902US01) filed on Jan. 16, 2009; U.S. patent application Ser. No. 12/395,383 (Attorney Docket No. 19910US01) filed on Feb. 27, 2009; U.S. patent application Ser. No. ______ (Attorney Docket No. 23397US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23398US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23399US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23400US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23401US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23402US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23403US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23404US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23405US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23406US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23407US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23408US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23409US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23410US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23411US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23412US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23413US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23414US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23415US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23417US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23418US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23419US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23420US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23421US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23422US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23423US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23424US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23425US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23426US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23427US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23428US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23429US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23430US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23431US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23432US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23433US02) filed on ______; U.S. patent application Ser. No. ______ (Attorney Docket No. 23434US02) filed on ______; and U.S. patent application Ser. No. ______ (Attorney Docket No. 23435US02) filed on ______.

Each of the above stated applications is hereby incorporated herein by reference in its entirety.

FIELD OF THE INVENTION

Certain embodiments of the invention relate to broadband access. More specifically, certain embodiments of the invention relate to providing user-generated content via a gateway.

BACKGROUND OF THE INVENTION

As the use of home networks grow in popularity, the capabilities of today's gateway devices may not be adequate to support certain applications and content to be provided through such networks.

Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with the present invention as set forth in the remainder of the present application with reference to the drawings.

BRIEF SUMMARY OF THE INVENTION

A system and/or method for providing user-generated content via a gateway, as set forth more completely in the claims.

Various advantages, aspects and novel features of the present invention, as well as details of an illustrated embodiment thereof, will be more fully understood from the following description and drawings.

BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a block diagram illustrating an exemplary communication system that comprises a home network serviced by a broadband gateway, in accordance with an embodiment of the invention.

FIGS. 2A and 2B are block diagrams that illustrate exemplary broadband gateways, in accordance with embodiments of the invention.

FIG. 3A is a block diagram that illustrates exemplary utilization of metadata associated with received content, in accordance with an embodiment of the invention.

FIG. 3B is a diagram that illustrates exemplary obtaining metadata information utilizing the software agent of FIG. 3A, in accordance with an embodiment of the invention.

FIGS. 4A-4C are diagrams that illustrate exemplary user interface information presented based on rating information and user profile, in accordance with an embodiment of the invention.

FIG. 5 is a diagram that illustrates exemplary embedding of rating information in one or more data streams utilizing the software agent of FIGS. 3A and 3B, in accordance with an embodiment of the invention.

FIG. 6 is a diagram that illustrates content sharing by a broadband gateway, in accordance with an embodiment of the invention.

FIG. 7 is a flow chart that illustrates exemplary steps for content sharing, in accordance with an embodiment of the invention.

FIG. 8 is a flow chart that illustrates exemplary steps for handling rating information in metadata associated with received content, in accordance with an embodiment of the invention.

FIG. 9 is a flow chart that illustrates exemplary steps for inserting rating information into content, in accordance with an embodiment of the invention.

DETAILED DESCRIPTION OF THE INVENTION

Certain embodiments of the invention can be found in a method and system for providing user-generated content via a gateway. In accordance with various embodiments of the invention, a broadband gateway may be communicatively coupled to one or more devices and may also be operable to handle at least one physical layer connection to at least one corresponding network access service provider. The broadband gateway may receive content and metadata associated with the content through the at least one network access service provider. The broadband gateway may determine, based on the received metadata and on one or more rules associated with a user profile, whether to enable access to at least a portion of the received content by a device in a peer-to-peer configuration with the broadband gateway. The broadband gateway may communicate to such a device an indication that at least a portion of the received content is available for sharing. The metadata may comprise rating information, copyright information, language information, and privacy rules. The rating information may be modified or updated based on information received from other users. The rating information may comprise one or more descriptors that convey a rating value.

In accordance with other embodiments of the invention, a method and system may be provided in which the broadband gateway may assign metadata to content, the metadata being embedded into one or more data streams. The content may be user-generated content, for example. The broadband gateway may communicate, through the at least one corresponding network access service provider, the content and the assigned metadata to a device connected in a peer-to-peer configuration with the broadband gateway. The metadata assigned by the broadband gateway may comprise one or more of rating information, copyright information, language information, and privacy rules.

To perform some of the operations described herein, the broadband gateway may utilize a software agent, or other like software program and/or application. For example, the broadband gateway may enable a software agent to be executed that is able to obtain and/or extract content, rating information, copyright information, language information, privacy rules, and/or other content-related information from downloaded data and/or from data streams. Similarly, the software agent may be utilized to embed and/or insert content, rating information, copyright information, language information, privacy rules, and/or other content-related information into data and/or streams of data, for example. In this regard, a rating value defined by a viewer or a user, or by multiple viewers or users, may be assigned, aggregated, and/or attached by the broadband gateway to content, including to user-generated content. In some instances, the input from separate users, such as friends and family, for example, may be aggregated into a single rating value that may be assigned to the content. In other instances, the input from separate users may be utilized to modify or update a rating value associated with a particular content.

FIG. 1 is a block diagram illustrating an exemplary communication system that comprises a home network serviced by a broadband gateway, in accordance with an embodiment of the invention. Referring to FIG. 1, there is shown a home network 100 a, a plurality of distribution networks 110, a plurality of network access service providers 120, and a plurality of content providers 130. The home network 100 a may be serviced by a broadband gateway 102.

The content providers 130 may generate, capture, and/or package content, such as multimedia content, for example, that may be distributed to end users. Content originating from the content providers 130 may be distributed to end users (e.g., consumers) by the network access service providers 120. The term “network access service provider” as utilized herein, may be distinguished from the more generic term “service provider” that may refer to services other than providing physical layer access to a network. An entity that functions as a network access service provider, however, may also provide content and/or services other than network access. In some instances, an entity that functions as a network access service provider may generate, capture, and/or package content, such as multimedia content, for example, that may be distributed to end users. The content received through the network access service providers 120 may comprise, for example, programming scheduling information and/or metadata associated with such programming. In some instances, the metadata may originate in a server, such as a web server, associated with one or more of the content providers 130.

The network access service providers 120 may comprise various entities and/or networks that provide access to content and/or services using different access technologies, such as multimedia, television, Internet, phone, Ethernet, multimedia over coax alliance (MoCA), passive optical network (PON), and/or cellular services, for example, to a plurality of end users. The end users may utilize devices that may be configured to support the necessary networking and/or communication infrastructures and/or standards. For example, end users may utilize cellular devices or smartphones, personal computers (PCs), servers, and/or set-top boxes. Exemplary network access service providers may comprise, for example, cellular service providers (e.g., AT&T, Verizon), cable television (CATV) providers (e.g., Comcast, RCN, Cox), satellite television providers (e.g., DirectTV, DISH Network), Internet service providers (ISPs), digital subscriber line (DSL) providers, WiMAX providers, and/or plain old telephone service (POTS) providers. In an exemplary embodiment of the invention, the broadband gateway 102 may enable connecting to a plurality of network access service providers 120 to facilitate receiving content originating from one or more of the content providers 130. When more than one network access service provider 120 provides access to content and/or services to the broadband gateway 102, each network access service provider 120 may do so through a separate physical layer access. In an embodiment of the invention, a separate physical layer access may be enabled in the broadband gateway 102 by having a separate network interface for each network access service provider 120 within the broadband gateway 102.

The plurality of distribution networks 110 may comprise one or more networks that may be operable to enable wireless and/or wired communication among a plurality of entities based on one or more networking and/or communication infrastructures. In this regard, the plurality of distribution networks 110 may be utilized to enable distributing content generated by the content providers 130 and/or by the network access service providers 120 to end users. The network connectivity available via the plurality of distribution networks 110 may be based on one or more communication standards and/or protocols. The plurality of distribution networks 110 may comprise, for example, the Internet 110 a, a CATV network 110 b, a satellite television (TV) network 110 c, a wireless local area network/wide area network (LAN/WAN) 110 d, and/or a cellular network 110 e.

The Internet 110 a may comprise a system of interconnected networks to enable exchange of data between a plurality of nodes, based on one or more networking standards, including, for example, the Internet Protocol (IP). For example, the Internet 110 a may enable connectivity among a plurality of private and public, academic, business, and/or government nodes and/or networks. The physical connectivity may be provided in the Internet 110 a via, for example, the Public Switched Telephone Network (PSTN), copper wires, fiber-optic cables, wireless interfaces, and/or other protocols and/or standards-based interfaces. The transport functionality may be performed in the Internet 110 a based on, for example, one or more protocols, such as the Transmission Control Protocol/IP (TCP/IP), for example. The CATV network 110 b may comprise suitable distribution nodes, systems, and/or subnetworks that may enable forwarding of communication between CATV providers and a plurality of cable-TV consumers. For example, the CATV network 110 b may comprise a network of fiber optics and/or coaxial cables for use in CATV broadcasts. The satellite TV network 110 c may comprise suitable distribution nodes, systems, and/or subnetworks that may enable communication of satellite TV broadcast by satellite TV providers to a plurality of consumers. For example, the satellite network 110 c may comprise a plurality of orbiting satellite nodes and/or one or more terrestrial centers in a satellite-TV system.

The LAN/WAN network 110 d may comprise suitable logic, circuitry, interfaces, and/or code that may be operable to enable implementation of one or more wired and/or wireless LAN or WAN standards and/or protocols. Exemplary WAN technologies comprise, for example, WiMAX-based networks. Exemplary LAN technologies may comprise, for example, those based on IEEE 802.11 standards, including, for example, WiFi-based networks. The cellular network 110 e may comprise suitable logic, circuitry, interfaces and/or code that may be operable to enable communication via one or more cellular technologies. Exemplary cellular technologies may comprise Code Division Multiple Access (CDMA), wideband CDMA (WCDMA), CDMA1000, High-Speed Downlink Packet Access (HSDPA), Global System for Mobile Communications (GSM), General Packet Radio Services (GPRS), Enhanced Data Rates for Global Evolution (EDGE), and/or Universal Mobile Telecommunication System (UMTS). The cellular network 110 e may comprise, for example, a plurality of control and/or switching nodes, and a plurality of base stations that enable transmission and/or reception of cellular based communications between the cellular network 110 e and cellular capable devices.

The home network 100 a may correspond to a location that may comprise a plurality of devices which may be serviced and/or managed by the broadband gateway 102. In this regard, the location may be a residence (e.g., home, apartment), a small business, a school, a library, and/or other like settings in which users may want to obtain access to service and/or to content provider networks. The broadband gateway 102 may be utilized in the home network 100 a to provide connectivity between the home network 100 a and the network access service providers 120, the distribution networks 110, and/or the content providers 130.

The broadband gateway 102 may comprise suitable logic, circuitry, interfaces, and/or code that may be operable to provide connectivity between one or more devices in a home network, such as the home network 100 a, and a plurality of external networks. For example, the broadband gateway 102 may support configuring and/or using a plurality of broadband connections 108 to the distribution networks 110. The broadband connections 108 may comprise wired and/or wireless connections between the broadband gateway 102 and the distribution networks 110, which may enable communication between the broadband gateway 102 and the network access service providers 120. The broadband gateway 102 may operate as an interface device that may allow one or more network access service providers and/or content providers to interact with various devices in the home network. In this regard, the broadband gateway 102 may enable communication with each of the network access service providers 120 through separate interfaces. That is, each network access service provider 120 from the plurality of network access service providers 120 may interface with the broadband gateway 102 through a network interface that is separate and/or different from a network interface associated with each of the other network access service providers 120.

A single broadband gateway 102 may be operable to handle multiple physical layer access connections, where a physical layer may refer to an OSI layer 1. The connections may provide access to one or more of the distribution networks 110. The distribution networks 110 may be owned, operated, leased, or otherwise associated with different network access service providers 120. For example, one network access service provider 120 may provide network access to the broadband gateway 102 through a cable television connection over coaxial cabling associated with the CATV network 110 b. In another example, a different network access service provider 120 may provide network access to the broadband gateway 102 through a DSL connection over twisted-pair cabling associated with the Internet 110 a. In some instances, the broadband gateway 102 may be operable to concurrently communicate over several physical layer connections associated with the multiple network access service providers 120.

The broadband gateway 102 may be operable to perform and/or provide various services that may pertain to enabling and/or facilitating reception of multimedia content. The content may be delivered through one or more network access services providers 120 and their associated networks, which may include at least some portions of the distribution networks 110. For example, the broadband gateway 102 may be operable to perform such operations as network access related processing (e.g., PHY/MAC, transport layer processing), encryption and/or decryption, user and/or account authentication, and/or at least some of video and/or audio processing operations that may be needed for consumption of multimedia content. The broadband gateway 102 may communicate with various devices in the home network 100 a, using wired and/or wireless communication links.

Devices serviced by, and/or connected to the broadband gateway 102 may comprise content consuming devices and/or other, non-content consuming household or home devices that may be operable to interact with the broadband gateway 102. For example, the broadband gateway 102 may service, and/or may communicate with a plurality of home devices 104 a-104 j in the home network 100 a. The home devices may comprise, for example, one or more of a television 104 a, a laptop computer 104 b, a detector 104 c (e.g., a smoke detector, a carbon monoxide detector, a security alarm), a computer and/or server 104 d, a mobile phone 104 e, a speaker 104 f, an AM/FM radio 104 g, a phone 104 h, an appliance 104 i (e.g., refrigerator), and a digital video recorder (DVR) or personal video recorder (PVR) 104 j. The broadband gateway 102 may interact with each of the home devices 104 a-104 j via links 106 a-106 j, which may be supported by the broadband gateway 102 and the corresponding home device. For example, the link 106 a between the broadband gateway 102 and the television 104 a may comprise a High-Definition Multimedia Interface (HDMI) cable and/or 60 GHz WiGig wireless connection/interface. The link 106 b may comprise, for example, a wired Ethernet link, a wireless Ethernet link, a Universal Serial Bus (USB) link, or an IEEE 1394 link. The link 106 c may comprise, for example, a two-wire link or a wireless link. The link 106 d may comprise, for example, a wired Ethernet link, a wireless Ethernet link, a USB link, or an IEEE 1394 link. The link 106 e may comprise, for example, a wireless Ethernet link, a USB link, or a cellular link. The link 106 f may comprise speaker wire and/or a wireless link. The link 106 g may comprise, for example, AM and/or FM radio transmissions broadcast received using the broadband gateway 102. The link 106 h may comprise, for example, a phone line. The link 106 i may comprise, for example, a wired or wireless Ethernet link. The link 106 j may comprise, for example, a wired or a wireless link.

In the exemplary embodiment of the invention illustrated in FIG. 1, although the devices 104 a-104 j, which may be communicatively coupled to only the broadband gateway 102, are shown, the invention may not be so limited. Accordingly, the devices 104 a-104 j, which may be communicatively coupled to multiple broadband gateways in a local or home network, may be implemented without departing from the spirit and scope of various embodiments of the invention.

As illustrated in FIG. 1, a plurality of home networks 100 b, . . . , 100 n, may also be connected to the distribution networks 110. These home networks 100 b, . . . , 100 n may operate in substantially the same manner as the home network 100 a. By having more than one home network connected to the distribution networks 110, various applications, such as peer-to-peer communication and/or data aggregation operations may be possible by utilizing the broadband gateways 102 in the home networks. Each of the home networks 100 a, 100 b, . . . , and 100 n may be a source of content, such as user-generated content, for example, which may be communicated to any one of the other home networks. In this regard, content and/or other information in a broadband gateway 102 may be shared, including user-generated content, by enabling access to such content by another broadband gateway 102, or similar device, that is located in the same home network or in a different home network.

In operation, the broadband gateway 102 may be utilized as an interface device that may allow one or more of the network access service providers 120 and/or the content providers 130 to interact with various devices in a home network, such as the home network 100 a. The broadband gateway 102 may be operable to perform and/or provide various services that may pertain to enabling and/or facilitating reception of content, such as multimedia content, for example. The broadband gateway 102 may distribute the received content to one or more devices in the home network 100 a for consumption. The broadband gateway 102 may also be operable receive content and metadata associated with the content through one or more of the corresponding network access service providers 120. The received content may be in the form of downloadable television programs from content providers such as Hulu and/or similar content providers, for example. The received content may also be in the form of streaming content such as movies from Netflix, YouTube, and/or other similar content providers, for example. Moreover, the received content may be downloaded and/or streamed user-generated content received from a source in any one of the home networks 100 b, . . . , 100 n that is in a peer-to-peer configuration with the broadband gateway 102.

The received metadata may be in one of several standardized and/or proprietary formats that the broadband gateway 102 may be operable to support. The format of the received metadata may depend on the type of content and/or the source of the content. The received metadata may comprise one or more of rating information, copyright information, language information, privacy rules, and other content-related information.

The rating information that is associated with the received content may comprise one or more descriptors that convey at least a rating value. For example, descriptors such as the syntax utilized in a Region Rating Table (RRT) may be comprised within the received metadata to convey information about the rating value or values that are applicable to the programs and/or the content comprised within a particular transport stream and/or data stream received by the broadband gateway 102. In another example, descriptors such as the syntax elements utilized in Code Point Registry for MPEG-2-based standards, or other similar syntax elements, may be utilized to convey metadata information, such as rating information, associated with a particular content.

The broadband gateway 102 may determine, based on the received metadata and on one or more rules associated with a user profile, whether to enable access from a device, such as another broadband gateway (e.g., broadband gateways 102 in home networks 100 b, . . . , 100 n), to at least a portion of the received content. The device may be connected in a peer-to-peer configuration with the broadband gateway 102. The broadband gateway 102 may communicate to the device an indication that at least a portion of the received content is available for sharing. Once such an indication is provided, the device may access and/or retrieve the content from the broadband gateway 102.

The rating information may be modified in the broadband gateway 102 based on information received from one or more devices, such as one or more other broadband gateways 102. For example, users of one or more of the other broadband gateways 102 in the home networks 100 b, . . . , 100 n, may provide rating information that may be utilized to modify or update a rating value associated with a particular content.

The broadband gateway 102 may be operable to assign or attach metadata to content, such as user-generated content, for example. The broadband gateway 102 may embed or insert the metadata into one or more data streams. The broadband gateway 102 may communicate, through at least one network access service provider 120, the content and the assigned metadata to a device connected in a peer-to-peer configuration with the broadband gateway. Such device may be another broadband gateway 102 in any of the home networks 100 b, . . . , 100 n, for example.

In some embodiments, the broadband gateway 102 may obtain the rating information from the received metadata and may determine, based on the obtained rating information, whether to update a content directory in the broadband gateway 102 to reflect the received content. The determination may be based on one or more rules, such as rating rules, for example, associated with a user profile.

The broadband gateway 102 may be operable to assign rating information to content and may generate metadata associated with the content. The generated metadata may comprise the assigned rating values. As described above, the rating information may comprise descriptors, such as syntax elements, that convey a certain rating value and/or other information associated with the content. The broadband gateway 102 may communicate, through one or more of the corresponding network access service providers 120, the content and the generated metadata to a device that is in a peer-to-peer configuration with the broadband gateway 102, such as devices that are part of any one of the home networks 100 b, . . . , 100 n. The broadband gateway 102 may embed, insert, and/or attach the assigned rating information into one or more data streams associated with the generated metadata and/or the content.

FIG. 2A is a block diagram illustrating an exemplary broadband gateway, in accordance with an embodiment of the invention. Referring to FIG. 2A, there is shown a more detailed view of an exemplary architecture of the broadband gateway 102 described above with respect to FIG. 1. The broadband gateway 102 may comprise suitable logic, circuitry, code, and/or interfaces that may be operable to provide connectivity between one or more networks, such as the distribution networks 110, for example, and one or more devices in a home network, such as the home devices 104 a-104 j in the home network 100 a. Access from the broadband gateway 102 to the distribution networks 110 may be provided through one or more of the network access service providers 120.

The broadband gateway 102 may operate as an interface device that allows one or more network access service providers 120 and/or content providers 130 to interact with various devices in the home network 100 a, such as the home devices 104 a-104 j. Moreover, when more than one network access service provider 120 is utilized to provide access, the broadband gateway 102 may handle each of network access service providers 120 through a separate physical layer access.

The broadband gateway 102 may comprise suitable hardware and/or software to provide some or all of the functions and/or operations of one or more of a modem, a router, and a switch. The modem functions and/or operations may be those of a DSL modem, a cable modem, or a wireless cable modem, for example. The router functions and/or operations may be those of a wireless router, for example. The switch functions and/or operations may be those of a network switch, or a local area network (LAN) switch, for example. In some instances, the broadband gateway 102 may communicate with the various devices in the home via more than one home network.

The broadband gateway 102 may comprise one or more modules. Each of these modules may comprise hardware, software, or a combination thereof that may be utilized to perform various operations associated with the broadband gateway 102. In an embodiment of the invention, the broadband gateway 102 may comprise a provider interface module 202, a processor module 204, a memory module 206, and a client network interface module 208. The modules in the broadband gateway 102 may communicate with one or more of the other modules through one or more buses and/or connections 205. In some instances, the broadband gateway 102 may be such that the various modules listed above may be distributed over multiple devices. In such instances, the buses and/or connections 205 may enable communication between the various modules across the multiple devices. Moreover, the modules listed above are provided by way of illustration and not of limitation. Other configurations and/or architectures of the broadband gateway 102 may also be implemented. For example, the broadband gateway 102 may be a virtual gateway that is setup in a network by utilizing virtual machines (VMs) and/or next-generation (NG) data centers.

The provider interface module 202 may comprise suitable logic, circuitry, code, and/or interfaces that may be operable to receive data and/or to send data through one or more of the network access service providers 120, for example. The data received and/or sent may be associated with content from the content providers 130 and/or from the network access service providers 120. The provider interface module 202 may be operable to support multiple communication protocols, standards, and/or data transport technologies. As illustrated in FIG. 2A, the provider interface module 202 may be operable to interface with one or more of the network access service providers 120. In an embodiment of the invention, the provider interface module 202 may be operable to interface with N of the network access service providers 120. The provider interface module 202 may be communicatively coupled to the various network access service providers 120 via a plurality of broadband connections 108 described above with respect to FIG. 1.

The processor module 204 may comprise suitable logic, circuitry, code, and/or interfaces that may be operable to process data received and/or sent through one or more of the network access service providers 120, and/or data received from and/or sent to one or more devices in the home network 100 a. In this regard, the processor module 204 may comprise one or more portions that are suitable to handle certain types of data such as video data and/or audio data, for example. For example, the processor module 204 may comprise a core processor (not shown), a video processor (not shown), and an audio processor (not shown).

The processor module 204 may be operable to perform operations associated with processing content and metadata received by the broadband gateway 102. The content and the metadata may be received from data that is downloaded and/or streamed to the broadband gateway 102. The processor module 204 may be utilized to obtain information, such as copyright information, language information, and/or privacy rules, for example, which may be embedded, inserted, and/or attached to the received metadata. The processor module 204 may be utilized to obtain other information, such as rating information, for example, which may be included in the received metadata. The processor module 204 may utilize the rating information that is obtained from the received metadata to update a content directory stored in the memory module 206. Once the content directory is updated, the processor module 204 may generate a user interface, such as an Electronic Programming Guide (EPG) or an Interactive Programming Guide (IPG), for example, which may be communicated to a home device to present the updated content directory information to a user.

The processor module 204 may be operable to determine whether to make the content received accessible to other devices connected to the broadband gateway 102, including devices connected in a peer-to-peer configuration with the broadband gateway 102. Such determination may be based on the received metadata associated with the received content and/or on one or more rules associated with a user profile. That is, a user of the broadband gateway 102 may provide a set of rules that enable content sharing with other users. When new content is received, the processor module 204 may determine whether such content is to be shared by considering the characteristics of the content and/or the rules set by the user.

The processor module 204 may also be operable to assign rating information to content and to generate metadata associated with the content. In this regard, the generated metadata may comprise the assigned rating information. The processor module 204 may embed, insert, and/or attach the assigned rating information into one or more data streams associated with the generated metadata. In some instances, the assigned rating information may be aggregated to other rating information associated with the content. The rating information assigned by the processor module 204 may comprise one or more descriptors that convey a rating value. Other information, such as copyright information, language information, and/or privacy rules, for example, may be embedded, inserted, and/or attached to the generated metadata by the processor module 204.

To perform the various operations described above, the processor module 204 may enable the execution of one or more software agents, or other like software programs and/or applications. For example, a software agent may be executed that is able to obtain and/or extract content, rating information, copyright information, language information, privacy rules, and/or other content-related information from data received by the broadband gateway 102. Similarly, the same or other software agent may be utilized to embed, insert, and/or attach content, rating information, copyright information, language information, privacy rules, and/or other content-related information into data that is to be communicated by the broadband gateway 102.

The memory module 206 may comprise suitable logic, circuitry, code, and/or interfaces that may be operable to store data utilized in the operations of the broadband gateway 102. For example, the memory module 206 may be utilized to store configuration data, parameters, device information, tracking and/or monitoring information, security information, and intermediate processing data, for example. The memory module 206 may comprise storage media that may be integrated in the broadband gateway 102 and/or may be removable such as a removable storage device.

The memory module 206 may be operable to store content and/or information obtained from metadata associated with the content. For example, the memory module 206 may store content, rating information, copyright information, language information, privacy rules, and/or other content-related information from data received by the broadband gateway 102. The memory module 206 may store content and/or information to be embedded, inserted, and/or attached to metadata associated with the content. For example, the memory module 206 may store content, rating information, copyright information, language information, privacy rules, and/or other content-related information for data to be communicated by the broadband gateway 102.

The memory module 206 may be utilized to store one or more user profiles. A user profile may comprise a set of preferences and/or rules for a particular user. The user profile may indicate a particular user's preferences with respect to the type and/or capabilities of the devices in which that user receives, displays, and/or reproduces content. The user profile may indicate preferences with respect to the quality, type, genre, and/or cost of content for that particular user. The user profile may also indicate security preferences such as the type of actions, tasks, features, and/or operations that the user may allow a downloaded application to perform. Moreover, the user profile may indicate restrictions as to the type of content that may be made available. For example, the user profile may be utilized to filter out or remove violent content, mature or adult content, and/or content that otherwise the user considers to be inappropriate. In this regard, the user profile may have time and/or location information that may indicate when and/or in which of the home devices 104 a-104 j is content to be filtered out or removed from user access. The preferences and/or rules of the user profile may be utilized with the operations of a software agent or other like software program and/or application that may be executed by the processor module 204.

The user profile may also include a set of rules that indicate whether content available in the broadband gateway 102 (e.g., in the memory module 206) is to be made accessible to devices outside the home network associated with the broadband network 102. Such devices may comprise other devices in other home networks, including devices connected in a peer-to-peer configuration with the broadband gateway 102. The set of rules may indicate the type of content that may be shared. The set of rules may also indicate the devices and/or users with which certain content is to be shared. The user profile may also include rules associated with aggregating, modifying, and/or updating rating information based on information received from other users. In this regard, the user profile may indicate which devices and/or which users of such devices are allowed to provide information related to rating information.

The memory module 206 may be utilized to store one or more content directories. A content directory may comprise information, including programming scheduling information, related to content that may be available to the broadband gateway 102 through one or more of the network access service providers 120. A content directory may also comprise information related to content that may be available to the broadband gateway 102 from one or more of the home devices 104 a-104 j and/or related to content that is locally available in the memory module 206. The information associated with a content directory may be updated based on content that is received and/or made available to the broadband gateway 102. The information in a content directory may be utilized with the operations of a software agent or other like software program and/or application that may be executed by the processor module 204.

The client network interface module 208 may comprise suitable logic, circuitry, code, and/or interfaces that may be operable to receive data from and/or send data to one or more devices in the home network. The client network interface module 208 may be operable to support multiple communication protocols, standards, and/or data transport technologies.

FIG. 2B is a block diagram illustrating an exemplary broadband gateway, in accordance with another embodiment of the invention. Referring to FIG. 2B, there is shown the broadband gateway 102 with the provider interface module 202 comprising N separate network interfaces 203-1, . . . , 203-N, each of which is associated with one of the N network access service providers 120. In this manner, the broadband gateway 102 may separately interface with the network access service providers 120. The network interfaces 203-1, . . . , 203-N may enable the broadband gateway 102 to handle separate physical layer access for each of the N network access service providers 120. For example, the broadband gateway 102 may interface with each of a cellular service provider, a CATV provider, a satellite television provider, an ISP, and/or POTS provider through a separate network interface, each of which comprises suitable logic, circuitry, code, and/or interfaces to enable physical layer access.

FIG. 3A is a block diagram that illustrates exemplary utilization of metadata associated with received content, in accordance with an embodiment of the invention. Referring to FIG. 3A, there is shown the broadband gateway 102 described above. Also shown are a software agent 300 and a content processing application 310, both of which may be executed on the processor module 204. The software agent 300 may be utilized to obtain and/or extract content, rating information, copyright information, language information, privacy rules, and/or other content-related information from data received by the broadband gateway 102 through the provider interface module 202, for example. The software agent 300 may be utilized to embed, insert, and/or attach content, rating information, copyright information, language information, privacy rules, and/or other content-related information into data that is to be communicated by the broadband gateway 102 through the provider interface module 202, for example.

The content processing application 310 may be utilized to process content and/or information associated with the content. In one example, the content processing application 310 may be utilized to generate a graphical user interface (GUI) that may be communicated to one or more of the home devices 104 a-104 j through the home network interface module 208. In this regard, the content processing application 310 may prepare the GUI based on whether certain content is suitable for a particular user. For example, the content processing application 310 may include, as part of the program schedule to be presented by the GUI, information about content that has a certain rating that makes such content appropriate for a particular user. Whether such content may be included in the program schedule may be determined by the content processing application 310 and/or by the software agent 300.

In some instances, the content processing application 310, and/or other like software program and/or application, may be utilized to generate a GUI or other interface that may be presented to a user to enable the user to provide input regarding the type of rating that may be assigned to content available at the broadband gateway 102. In this regard, the content may be user-generated content that the user may wish to share with others through the network access service providers 120, for example. For example, a device in any one of the home networks 100 b, . . . , 100 n may be in a peer-to-peer configuration with the broadband gateway 102 and may be a source and/or a recipient of user-generated content.

Although a single software agent has been shown with respect to FIG. 3A, the invention need not be so limited. In some embodiments, instead of using a single software agent, multiple software agents may be executed on the processor module 204 to perform the various operations described herein. That is, some operations may be performed by one software agent while other operations may be performed by other software agents. For example, information extraction operations and information embedding operations may be performed by different software agents. In another example, content sharing operations may be performed by another software agent. In yet another example, ratings-related operations may be performed by one software agent while other metadata information may be handled by other software agent or agents. Moreover, multiple software agents may be executed concurrently on the processor module 204.

FIG. 3B is a diagram that illustrates exemplary obtaining of metadata utilizing the software agent of FIG. 3A, in accordance with an embodiment of the invention. Referring to FIG. 3B, there is shown the software agent 300 of FIG. 3A receiving data from a plurality of sources 350. The data may be received by the software agent 300 through the provider interface module 202 and/or may be stored in the memory module 206 before being received by the software agent 300. The software agent 300 may process the received data, which may comprise content and metadata associated with the content. When the data is received in multiple data streams, the software agent 300 may be operable to handle the various encapsulating layers of data that may be received by the broadband gateway 102.

The received metadata may be comprised in one or more locations and/or layers. For example, the received metadata may be within a header of a video packet in an elementary data stream, in descriptors associated with an MPEG-2 transport layer, and/or in a Real-time Transport Protocol (RTP) packet. In another example, watermarking information may be embedded in the video data itself. In yet another example, copy control information may be embedded in a transport layer or other similar layer.

The software agent 300, and/or other like software program and/or application, may be utilized to separate the received content from the received metadata and may extract information in the received metadata. Once separated from the received metadata, the received content may be processed and may be referred to as edited content, for example. As described above, the received metadata may be in any one of a plurality of standardized and/or proprietary formats that may be supported by the software agent 300. The information extracted from the received metadata may comprise rating information and/or other information, such as copyright information, language information, privacy rules, or the like.

In some embodiments, the software agent 300, and/or other like software program and/or application, may determine whether certain content is to be made available by the broadband gateway 102 for sharing with a device, such as a device in any one of the home networks 100 b, . . . , 100 n, including other broadband gateways 102. The software agent may utilize the received metadata and/or one or more rules associated with a user profile to determine whether certain content is to be shared. When content sharing is to be enabled, the software agent may generate an indication that is to be communicated to the device with which content is to be shared. The indication may comprise a signal or may be embedded in a signal, a packet, a frame, or other like data structure.

In some embodiments, the software agent 300, and/or other like software program and/or application, may determine a rating value or values associated with the received content based on the rating information that is extracted from the received metadata. For example, the software agent 300 may obtain the rating value or values from one or more descriptors in the rating information. The descriptors may be in the form of syntax elements that convey the rating value or values associated with the received content.

In some embodiments, the software agent 300, and/or other like software program and/or application, may modify extracted rating information based on information received from one or more devices, such as one or more other broadband gateways 102. For example, users of one or more devices in the home networks 100 b, . . . , 100 n, may provide rating information that may be utilized to modify or update a rating value associated with a particular content.

In some embodiments, the software agent 300, and/or other like software program and/or application, may be utilized to filter out or remove a particular content from the content that may be made available to a content directory based on the rating value or values associated with that particular content. In such instances, the software agent 300 may obtain a set of preferences and/or rules related to the content restrictions from a user profile. The software agent 300 may utilize these preferences and/or rules to determine whether the content is appropriate for a particular user and whether to update information associated with the content directory to reflect the availability of the received content. When the content is appropriate and the content directory is updated, the broadband gateway 102 may update a program or content schedule graphically displayed to a user through a user interface to reflect the availability of the received content.

FIG. 4A is a diagram that illustrates an exemplary user interface information being presented based on rating information and user profile, in accordance with an embodiment of the invention. Referring to FIG. 4A, there is shown a user A that is presented with a GUI 420 being displayed on the television 104 a, which is connected to the broadband gateway 102 through the link 106 a. The broadband gateway 102 may be aware that the current user is the user A from input provided by the user A and/or from other input received by the broadband gateway 102, such as sensor input, for example, that identifies the current user as the user A.

In this exemplary scenario, the software agent 300 described above may extract or obtain rating information related to content received by the broadband gateway 102. The broadband gateway 102 may have received content A, B, C, D, E, and F, for example, from one or more sources through the network access service providers 120. The rating information and a user profile associated with the user A may be utilized to determine whether the content received is appropriate and is to be included in the content directory. In this instance, as illustrated by the GUI 420, it is determined that content A, B, D, and F are appropriate or in accordance with the preferences and/or rules associated with the user A, and consequently, such content is included in the content directory and presented to the user A through the GUI 420. Content C and E, however, may have a rating value or values that make such content inappropriate for the user A at the current time. The user A may make a selection of content to consume based on the content being presented with the understanding that the broadband gateway 102 may have filtered out or removed content that may have been deemed inappropriate by the user A.

FIG. 4B is a diagram that illustrates another example of user interface information being presented based on rating information and user profile, in accordance with an embodiment of the invention. Referring to FIG. 4B, there is shown a user B that is presented with a GUI 430 being displayed on the television 104 a. The broadband gateway 102 may be aware that the current user is the user B from input provided by the user B and/or from other input received by the broadband gateway 102, such as sensor input, for example, that identifies the current user as the user B.

In this exemplary scenario, the software agent 300 may extract or obtain rating information related to content A, B, C, D, E, and F, for example, received by the broadband gateway 102. The rating information and a user profile associated with the user B may be utilized to determine whether the content received is appropriate and is to be included in the content directory. In this instance, as illustrated by the GUI 430, it is determined that content A, B, C, and E are appropriate or in accordance with the preferences and/or rules associated with the user B, and consequently, such content is included in the content directory and presented to the user B through the GUI 430. Content D and F, however, while appropriate for the user A as shown in FIG. 4A, may have a rating value or values that make such content inappropriate for the user B at the current time. The user B may make a selection of content to consume based on the content being presented with the understanding that the broadband gateway 102 may have filtered out or removed content that may have been deemed inappropriate by the user B.

FIG. 4C is yet another diagram that illustrates an example of user interface information being presented based on rating information and user profile, in accordance with an embodiment of the invention. Referring to FIG. 4C, there is shown the user A that is presented with a GUI 440 being displayed on a television 404 a, which is connected to the broadband gateway 102 through a link 406 a. There is also shown the user B that is presented with a GUI 450 being displayed on a television 404 b, which is also connected to the broadband gateway 102 through a link 406 b. The televisions 404 a and 404 b may be in different locations of a home or residence and may be part of a home network such as the home network 100 a described above. The broadband gateway 102 may be aware that the current users are the user A and the user B from input provided by the users and/or from other input received by the broadband gateway 102, such as sensor input, for example, that identifies the current users.

As described above with respect to FIGS. 4A and 4B, the software agent 300 may extract or obtain rating information related to content A, B, C, D, E, and F, for example, received by the broadband gateway 102. The rating information and a user profile associated with the users A and B may be utilized to determine whether the content received is appropriate and is to be included in the content directory. In this instance, as illustrated by the GUIs 440 and 450, it is determined that content A, B, D, and F are appropriate or in accordance with the preferences and/or rules associated with the user A, while content A, B, C, and E are appropriate or in accordance with the preferences and/or rules associated with the user B. Consequently, content A, B, D, and F is presented to the user A through the GUI 440 and content A, B, C, and E is presented to the user B through the GUI 450. Each of the users may make a selection of content to consume based on the content being presented with the understanding that the broadband gateway 102 may have filtered out or removed content that may have been deemed inappropriate by the user.

In an embodiment of the invention, the broadband gateway 102 may support different content directories for different users or a single content directory for all users. When a single content directory is supported, the software agent 300 and/or the content processing application 310 may be utilized to present to a user, information from the content directory related to content that may be deemed appropriate by that user.

In some embodiments, because the broadband gateway 102 may modify or update rating information, including rating values, based on information provided by other users (e.g., friends, family), the content that is made available to users A and B through GUIs in the various scenarios described above may change based when such modification or update occurs. In this regard, the content directory may be dynamically updated as a result of modifications or updates to rating information.

FIG. 5 is a diagram that illustrates exemplary embedding of rating information in one or more data streams utilizing the software agent of FIGS. 3A and 3B, in accordance with an embodiment of the invention. Referring to FIG. 5, there is shown the software agent 300 receiving content, such as user-generated content, for example. The software agent 300 may also receive information from a user profile and/or input from a user to generate metadata associated with the content. The metadata generated by the software agent 300 may comprise rating information, such as descriptors that indicate a rating value or values assigned to the content, and/or copy control information associated with the content, which may comprise watermarking, for example. The software agent 300 may determine the rating value or values assigned to the content based on information comprised within the content, the information from the user profile, and/or the user input. In some instances, the metadata generated by the software agent 300 may comprise information such as copyright information, language information, privacy rules, or other like content-related information.

The metadata generated by the software agent 300 may be embedded, inserted, and/or attached to one or more of a plurality of data streams 510. For example, the generated metadata may be comprised in header of a video packet in an elementary data stream, in descriptors associated with an MPEG-2 transport layer, and/or in a Real-time Transport Protocol (RTP) packet. In another example, watermarking information may be embedded in the video data itself. In yet another example, copy control information may be embedded in a transport layer or other similar layer.

FIG. 6 is a diagram that illustrates content sharing by a broadband gateway, in accordance with an embodiment of the invention. Referring to FIG. 6, there is shown the home networks 100 a, 100 b, . . . , 100 n described above with respect to FIG. 1. The broadband gateway 102 in the home network 100 a may enable content to be shared with one or more devices in the home networks 100 b, . . . , 100 n. Such devices may include the broadband gateways 102 in the home networks 100 b, . . . , 100 n. Moreover, such devices may be connected to the broadband gateway 102 in the home network 100 a in a peer-to-peer configuration.

When content is to be shared, the broadband gateway 102 in the home network 100 a may generate one or more indications that may be communicated to the appropriate devices to inform those devices that content is available for sharing. In this regard, the broadband gateway 102 in the home network 100 a may make different content available to different devices based on the metadata associated with the content and/or sharing rules. When the broadband gateway 102 in the home network 100 a generates and/or assigns metadata to certain content, such content may be made available to one or more devices in the home networks 100 b, . . . , 100 n based on the metadata and/or on sharing rules.

In some embodiments, users of one or more devices in the home networks 100 b, . . . , 100 n may provide information to the broadband gateway 102 in the home network 100 a that may be utilized to modify or update rating information associated with certain content. The modification or update of rating information may be based on rules provided by a user profile, for example.

FIG. 7 is a flow chart that illustrates exemplary steps for content sharing, in accordance with an embodiment of the invention. Referring to FIG. 7, there is shown a flow chart 700 associated with the operation of a broadband gateway that may enable communication with a plurality of devices, wherein the broadband gateway is operable to handle a plurality of physical layer connections to a plurality of corresponding network access service providers. In this regard, the broadband gateway may be the broadband gateway 102 described above, the plurality of device may be the home devices 104 a-104 j described above, and the network access service providers may be the network access service providers 120 described above.

At step 710, the broadband gateway 102 may receive data through one or more data streams, the data comprising content and associated metadata. The content and the metadata may be received by the broadband gateway 102 from one or more of the home devices 104 a-104 j and/or through the one or more of the corresponding network access service providers 120.

At step 720, the broadband gateway 102 may determine whether to enable a device, such as a device in another home network, to access at least a portion of the received content. The broadband gateway 102 may utilize a software agent, such as the software agent 300 described above, to make the determination of whether to enable sharing of content with other devices. The devices with which content may be shared may include the broadband gateways 102, or other like devices, in the other home networks.

At step 730, the broadband gateway 102 generate one or more indications to inform the appropriate devices that content is available for sharing. The indications may be communicated to the appropriate devices through a signal generated by the broadband gateway 102. A software agent, such as the software agent 300, may be utilized to generate the indications and/or the signals associated with the indications. Once the appropriate devices are notified, the devices may automatically, and/or through user input, obtain the received content from the broadband gateway 102.

FIG. 8 is a flow chart that illustrates exemplary steps for handling rating information in metadata associated with received content, in accordance with an embodiment of the invention. Referring to FIG. 8, there is shown a flow chart 800 associated with the operation of a broadband gateway that may enable communication with a plurality of devices, wherein the broadband gateway is operable to handle a plurality of physical layer connections to a plurality of corresponding network access service providers. In this regard, the broadband gateway may be the broadband gateway 102 described above, the plurality of device may be the home devices 104 a-104 j described above, and the network access service providers may be the network access service providers 120 described above.

At step 810, the broadband gateway 102 may receive content and metadata associated with the content through one or more of the corresponding network access service providers 102, wherein the received metadata may comprise rating information associated with the received content. The rating information may comprise one or more descriptors that convey a rating value. The broadband gateway 102 may receive one or more data streams that comprise the received content and the received metadata. In some instances, the received content may comprise user-generated content. Moreover, the received content and the received metadata may be received from a source, through the one or more of the corresponding network access service providers 120, wherein the source may be in a peer-to-peer configuration with the broadband gateway 102.

At step 820, the broadband gateway 102 may obtain the rating information from the received metadata. In some instances, the broadband gateway 102 may verify one or both of the received content and the received metadata before obtaining the rating information from the received metadata. For example, the broadband gateway 102 may analyze copy control information and/or watermark information to determine that the received content and/or the received metadata have not been altered and/or tampered before proceeding to obtain the rating information.

At step 830, the broadband gateway may determine, based on the obtained rating information, whether to update a content directory in the broadband gateway 120 to reflect the received content. The determination of whether to update the content directory may be based on one or more rules associated with a user profile. In this regard, the determination may be performed, at least in part, by the processor module 204, while the content directory and/or the user profile may be stored in the memory module 206. The operations associated with the steps 810, 820, and/or 830 may be performed by, for example, the software agent 300 described above, or other like software program and/or application.

At step 840, when the content directory is updated to reflect the received content, the broadband gateway 102 may generate a user interface based on the updated content directory. The user interface may be generated by, for example, the content application 310 described above or other like software program and/or application. At step 850, the broadband gateway 102 may communicate the user interface to one or more of the home devices 104 a-104 j such that information associated with the received content may be presented to a user.

FIG. 9 is a flow chart that illustrates exemplary steps for inserting rating information into content, in accordance with an embodiment of the invention. Referring to FIG. 9, there is shown a flow chart 900 associated with the operation of a broadband gateway that may enable communication with a plurality of devices, wherein the broadband gateway is operable to handle a plurality of physical layer connections to a plurality of corresponding network access service providers. In this regard, the broadband gateway may be the broadband gateway 102 described above, the plurality of device may be the home devices 104 a-104 j described above, and the network access service providers may be the network access service providers 120 described above.

At step 910, the broadband gateway 102 may assign rating information to content. The content may be content received by the broadband gateway 102 from one or more of the home devices 104 a-104 j and/or content received through the one or more of the corresponding network access service providers 120. The rating information may comprise one or more descriptors that convey a rating value.

At step 920, the broadband gateway 102 may generate metadata associated with the content, the generated metadata may comprise the assigned rating information. In this regard, the broadband gateway 102 may embed the assigned rating information into one or more data streams associated with the generated metadata.

At step 930, the broadband gateway 102 may communicate, through one or more of the corresponding network access service providers 120, the content and the generated metadata to a device in a peer-to-peer configuration with the broadband gateway 102.

Certain embodiments of the invention may comprise a system in which a broadband gateway, such as the broadband gateway 102, may be communicatively coupled to a plurality of devices, such as the home device 104 a-104 j, for example. The broadband gateway 102 may be operable to handle at least one physical layer connection to at least one corresponding network access service provider, such as at least one of the network access service providers 120. The at least one physical layer connection may comprise a plurality of physical layer connections and the at least one corresponding network access service provider may comprise a plurality of corresponding access service providers, and each of the plurality of physical layer connections may correspond to a respective one of the plurality of corresponding access service providers.

The broadband gateway 102 may comprise one or more processors and/or circuits that are operable to receive content and metadata associated with the content through the at least one corresponding network access service provider 120. The received metadata may comprise rating information associated with the received content. The rating information may comprise one or more descriptors that convey a rating value. The content and the associated metadata may be received through the provider interface module 202 of the broadband gateway 102. The provider interface module 202 may receive one or more data streams that comprise the received content and the received metadata. In some instances, the received content may comprise user-generated content. Moreover, the received content and the received metadata may be received from a source, through the at least one corresponding network access service provider 120, wherein the source may be in a peer-to-peer configuration with the broadband gateway 102.

The processor module 204, for example, may be operable to obtain the rating information from the received metadata. In some instances, the processor module 204 may verify one or both of the received content and the received metadata before obtaining the rating information from the received metadata. For example, the processor module 204 may analyze copy control information and/or watermark information to determine that the received content and/or the received metadata have not been altered and/or tampered before proceeding to obtain the rating information. The processor module 204 may be operable to obtain the rating information from metadata that is formatted in one of a plurality of formats supported by the processor module 204.

The processor module 204 may be operable to determine, based on the obtained rating information, whether to update a content directory in the broadband gateway to reflect the received content. The determination of whether to update the content directory may be based on one or more rules associated with a user profile. The content directory and/or the user profile may be stored in the memory module 206. The processor module 204 may support the operations described above by enabling the execution of a software agent, such as the software agent 300, or other like software program and/or application.

When the content directory is updated to reflect the received content, the processor module 204 may generate a user interface based on the updated content directory. The user interface may be generated by, for example, the content application 310 described above, or other like software program and/or application, executing on the processor module 204. The processor module 204 and the home network interface module 208 may be operable to communicate the generated user interface to one or more of the home devices 104 a-104 j such that information associated with the received content may be presented to a user.

Certain embodiments of the invention may comprise a method and a system in which the processor module 204 of the broadband gateway 102 may assign rating information to content. The content may comprise user-generated content, for example. The processor module 204 may generate metadata associated with the content. The generated metadata may comprise the assigned rating information. The processor module 204 and the provider interface module 202 of the broadband gateway 102 may be utilized to communicate, through the at least one corresponding network access service provider 120, the content and the generated metadata to a device that is connected in a peer-to-peer configuration with the broadband gateway 102.

Another embodiment of the invention may provide a non-transitory machine and/or computer readable storage and/or medium, having stored thereon, a machine code and/or a computer program having at least one code section executable by a machine and/or a computer, thereby causing the machine and/or computer to perform the steps as described herein for providing user-generated content via a gateway.

Accordingly, the present invention may be realized in hardware, software, or a combination of hardware and software. The present invention may be realized in a centralized fashion in at least one computer system or in a distributed fashion where different elements may be spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software may be a general-purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein.

The present invention may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.

While the present invention has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the present invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present invention without departing from its scope. Therefore, it is intended that the present invention not be limited to the particular embodiment disclosed, but that the present invention will include all embodiments falling within the scope of the appended claims. 

1. A method, comprising: in a broadband gateway that enables communication with a plurality of devices, wherein said broadband gateway is operable to handle at least one physical layer connection to at least one corresponding network access service provider: receiving content and metadata associated with the content through the at least one corresponding network access service provider; and determining, based on the received metadata and on one or more rules associated with a user profile, whether to enable access to at least a portion of the received content by a device connected in a peer-to-peer configuration with the broadband gateway.
 2. The method of claim 1, wherein the at least one physical layer connection comprises a plurality of physical layer connections and the at least one corresponding network access service provider comprises a plurality of corresponding access service providers, and wherein each of the plurality of physical layer connections corresponds to a respective one of the plurality of corresponding access service providers.
 3. The method of claim 1, comprising extracting the content and the metadata from one or more data streams received by the broadband gateway.
 4. The method of claim 1, wherein the metadata comprises one or more of rating information, copyright information, language information, and privacy rules.
 5. The method of clam 4, comprising modifying the rating information based on information received from the device connected in a peer-to-peer configuration with the broadband gateway.
 6. The method of claim 1, comprising: updating a content directory based on the received metadata and on one or more rules associated with the user profile; and generating a user interface based on the updated content directory.
 7. The method of claim 1, comprising communicating to the device connected in a peer-to-peer configuration with the broadband gateway an indication that at least a portion of the received content is available for sharing.
 8. The method of claim 1, wherein: the received content comprises user-generated content; and the received content and the received metadata are received from a source through the at least one corresponding network access service provider, the source being in a peer-to-peer configuration with the broadband gateway.
 9. A method, comprising: in a broadband gateway that enables communication with a plurality of devices, wherein said broadband gateway is operable to handle at least one physical layer connection to at least one corresponding network access service provider: assigning metadata to content, the metadata being embedded into one or more data streams; and communicating, through the at least one corresponding network access service provider, the content and the assigned metadata to another broadband gateway in a peer-to-peer configuration with the broadband gateway.
 10. The method of claim 9, wherein the metadata comprises one or more of rating information, copyright information, language information, and privacy rules.
 11. A system, comprising: one or more processors and/or circuits for use in a broadband gateway that enables communication with a plurality of devices, wherein said broadband gateway is operable to handle at least one physical layer connection to at least one corresponding network access service provider, the one or more processors and/or circuits being operable to: receive content and metadata associated with the content through the at least one corresponding network access service provider; and determine, based on the received metadata and on one or more rules associated with a user profile, whether to enable access to at least a portion of the received content by a device connected in a peer-to-peer configuration with the broadband gateway.
 12. The system of claim 11, wherein the at least one physical layer connection comprises a plurality of physical layer connections and the at least one corresponding network access service provider comprises a plurality of corresponding access service providers, and wherein each of the plurality of physical layer connections corresponds to a respective one of the plurality of corresponding access service providers.
 13. The system of claim 11, the one or more processors and/or circuits are operable to extract the content and the metadata from one or more data streams received by the broadband gateway.
 14. The system of claim 11, wherein the metadata comprises one or more of rating information, copyright information, language information, and privacy rules.
 15. The system of claim 4, wherein the one or more processors and/or circuits are operable to modify the rating information based on information received from the device connected in a peer-to-peer configuration with the broadband gateway.
 16. The system of claim 1, wherein the one or more processors and/or circuits are operable to: update a content directory based on the received metadata and on one or more rules associated with the user profile; and generate a user interface based on the updated content directory.
 17. The system of claim 11, wherein the one or more processors and/or circuits are operable to communicate to the device connected in a peer-to-peer configuration with the broadband gateway an indication that at least a portion of the received content is available for sharing.
 18. The system of claim 11, wherein: the received content comprises user-generated content; and the received content and the received metadata are received from a source through the at least one corresponding network access service provider, the source being in a peer-to-peer configuration with the broadband gateway.
 19. A system, comprising: one or more processors and/or circuits for use in a broadband gateway that enables communication with a plurality of devices, wherein said broadband gateway is operable to handle at least one physical layer connection to at least one corresponding network access service provider, the one or more processors and/or circuits operable to: assign metadata to content, the metadata being embedded into one or more data streams; and communicate, through the at least one corresponding network access service provider, the content and the assigned metadata to another broadband gateway in a peer-to-peer configuration with the broadband gateway.
 20. The system of claim 19, wherein the metadata comprises one or more of rating information, copyright information, language information, and privacy rules. 